<?php
namespace Admin\Controller;
use Think\Controller;
class ConfigController extends CommonController {
    public function lst(){
		$mod=D('config');
		$count      = $mod->count();// 查询满足要求的总记录数
		$Page       = new \Think\Page($count,3);// 实例化分页类 传入总记录数和每页显示的记录数(25)
		$Page->setConfig('first','首页');
		$Page->setConfig('prev','上一页');
		$Page->setConfig('next','下一页');
		$Page->setConfig('end','共有{%TOTAL_PAGE%}页');
		$show       = $Page->show();// 分页显示输出// 进行分页数据查询 注意limit方法的参数要使用Page类的属性
		$lis= $mod->limit($Page->firstRow.','.$Page->listRows)->select();
		$this->assign('lis',$lis);// 赋值数据集
		$this->assign('page',$show);// 赋值分页输出
		$this->display('lst');
	}
	
	
	public function del(){
		$mod=D('config');
		if($mod->delete(I('id'))){
			$this->success("删除配置项成功！",U('lst'));
		}else{
			$this->error("删除配置项失败！");
		}
	}
	

	
	public function add() {
				$mod = D('config'); //实例化数据库
				if (!empty($_POST)) {
				$mod->create(); //收集post表单数据
				$str = $mod->add(); //添加数据
				if ($str) {
							$this->success('配置项添加成功！', U('lst'));
				} else {
							$this -> error('配置项添加失败！', U('add'));
				}
			} else {
				$this->display(); //没有POST显示空模板
			}
	}
	
	
	
	public function edit(){
		$config=D('config');
		if(IS_POST){
			if($config->create()){
				if($config->save()){
					$this->success("修改配置项成功！",U('lst'));
				}else{
					$this->error("修改配置项失败！");
				}
			}
			return ;
		}
		$configs = $config->find(I('id'));
		$this->assign("configs",$configs);
		$this->display();
		
	}
	
	public function config(){
		if(IS_POST){
			$_post=I('post.');
			//判断如果选项没有选取（表单没有提交值）就将其对应的值设为null
			foreach($_post as $k=>$v){
				$post[]=$k;
			}
			$_ennameres=D('config')->field('enname')->select();
			foreach($_ennameres as $k=>$v){
				$ennameres[]=$v['enname'];
			}
			foreach($ennameres as $v){
				if(!in_array($v,$post)){
					$arr[]=$v;
				}
				
			}
			foreach($arr as $v){
				$_post[$v]=null;
			}
			
			if($_post){
				foreach($_post as $k=>$v){
					D('config')->where(array('enname'=>$k))->save(array('value'=>$v));
				}
				$this->success("修改配置项成功！",U('config'));
			}else{
				$this->error("数据发送有误！");
			}
			return;
		}
		$configres=D('config')->select();
		$this->assign('configres',$configres);
		$this->display();
		
	}
}